import os,sys,shutil
import datetime
from tkinter import *
from tkinter import filedialog
import sys
from cbxyh.note import Create

'''
#查询目录
#path 路径
'''

def refer(path):
    li = os.listdir(path)
    if len(li) == 0:
        print("此目录下没有文件")
    else:
        for line in li:
            if os.path.exists(path+'\\'+line):
                tt = datetime.datetime.fromtimestamp(os.path.getmtime(path+'\\'+line))
                tm = tt.strftime("%Y/%m/%d %H:%M")
            else:
                tm = '0000/00/00 00:00'
            if os.path.isdir(path+'\\'+line):
                filename = "<DIR>"
            else:
                filename = ' '
            print(tm.ljust(15)+filename.center(15)+line.ljust(15))

'''
#删除
#delete(path,boay,dele,file)
#path:路径，body:文件名，dele:判断是否删除文件夹，file:文件名
'''
def delete(path,body):
    if os.path.isdir(path+'\\'+body):
        dele = input("是否要删除"+body+"，里面可能有重要文件,是/否：")
        if dele == '是':
            if body:
                try:
                    shutil.rmtree(path+'\\'+body)
                    print(body+'文件已删除')
                except:
                    print("文件存在只读文件")
        else:
            print("退出")
    elif os.path.exists(path+'\\'+body):
        os.remove(path+'\\'+body)
        print(body+"已删除")
    else:
        print("哈哈,出错了，看下你要删除的文件名")
'''
#打开文件
#open(body,bdone)
#body:判断长度，bdone:要打开文件名
'''
def openFile(path,body,bdone):
    file_name = {'txt','js','html','php','css','py'} 
    if len(body)>1:
        if (len(bdone.split(':'))== 2):
            pan = bdone.split(':')[0]
            if (len(pan)==1) & isinstance(pan,str):
                if (122>=ord(pan)>=97) | (90>=ord(pan)>=65):
                    if os.path.isdir(pan+':'+'\\'):
                        if (90>=ord(pan)>=65):
                            path = pan+':'+'\\'
                        else:
                            path = chr(ord(pan)-32)+":"+'\\'
                    else:
                        print("你输入的盘符不存在")
                else:
                    print("输入有误,请重新输入")
            else:
                print("输入有误，请重新输入")
        elif path.split('\\')[1]:
            if os.path.isdir(path+'\\'+bdone):
                path += '\\'+bdone
            elif (bdone.split('.')[-1]) in file_name:
                if os.path.exists(path+'\\'+bdone):
                    root = Tk() #定义一个主窗口
                    root.title('记事本') #看到title了吗？添加一个属性，名字叫记事本
                    root.geometry("800x500") #几何布局，初始化主窗口的大小
                    window = Create(root,path+'\\'+bdone) #从这里开始正式调用Create实现一个记事本
                    root.mainloop()
                else:
                    print("文件不存在")
            else:
                
                print("目录名无效")
        else:
            if os.path.isdir(path+bdone):
                path += bdone
            else:
                print("目录名无效")
    else:
        print("请输入文件名")
    return path
'''
#新建
#newFile(path,file)
#path:路径,file：文件名
'''
def newFile(path,file):
    file_name = {'txt','js','html','php','css','py'}
    if len(file.split('.')) == 1:
        if not os.path.exists(path+'\\'+file):
            os.mkdir(path+'\\'+file)
            print(file+"文件已创建")
        else:
            print("文件已存在")
    elif file.split('.')[-1] in file_name:
        if not os.path.exists(path+"\\"+file):
            root = Tk() #定义一个主窗口
            root.title('记事本') #看到title了吗？添加一个属性，名字叫记事本
            root.geometry("800x500") #几何布局，初始化主窗口的大小
            window = Create(root,0,path+'\\'+file) #从这里开始正式调用Create实现一个记事本
            root.mainloop() 
        else:
            print("文件已存在")
    else:
        print("文件不能创建")
'''
#返回上一级
#getBack(path):
#path：目录
'''
def getBack(path):
    path = os.path.dirname(path)
    return path
'''
#帮助说明
'''
def cmdHelp(h):
    if len(h)>1:
        h = h[1]
        if h == "查询":
            print("输出当前目录下面的文件")
        elif h == "删除":
            print("格式：删除 文件名",end=" \n")
            print("删除文件或文件夹，文件有提醒，文件夹没有提醒")
        elif h == "打开":
            print("格式：打开 文件夹名",end=" \n")
            print("打开文件夹，并进入")
        elif h == "帮助":
            print("格式：帮助 命令",end=" \n")
            print("输出帮助内容")
        elif h == "返回":
            print("返回上一目录")
        elif h == "新建":
            print("格式：新建 文件名",end=" \n")
            print("新建文件或文件夹")
        elif h == "退出":
            print("退出当前页面")
        else:
            print("没有你要查询的命令")
    else:
        print("查询")
        print("删除")
        print("帮助")
        print("打开")
        print("新建")
        print("退出")
        print("输入帮助 需要帮助的命令")

def fun(path,body):
    if body.split('.')[-1] == 'py':
        filename = "Python"+" "+path+"\\"+body
        os.system(filename)

def deleteFile():
    return 0
